DataSource for Entity Framework for WPF/Silverlight
AttachView<TResult>(Func<View<T>,View<TResult>>) メソッド
使用例 

C1.LiveLinq.LiveViews 名前空間 > View<T> クラス > AttachView メソッド : AttachView<TResult>(Func<View<T>,View<TResult>>) メソッド
サブクエリービュー内の要素の型。
サブビューがアタッチされている先のビューから、そのサブビューを取得する関数。
サブクエリーをビューのインクリメンタルメンテナンスメカニズムに含めます。
シンタックス
'宣言
 
Public Overloads Function AttachView(Of TResult)( _
   ByVal selector As System.Func(Of View(Of T),View(Of TResult)) _
) As View(Of TResult)
public View<TResult> AttachView<TResult>( 
   System.Func<View<T>,View<TResult>> selector
)

パラメータ

selector
サブビューがアタッチされている先のビューから、そのサブビューを取得する関数。

型パラメータ

TResult
サブクエリービュー内の要素の型。

戻り値の型

アタッチされているサブビュー。
解説

サブクエリーは、外側のクエリーの一部である関数内のクエリーです。 外側のクエリーがライブビューで、そのベースデータが変更されたために関数を再計算する必要がある場合、 デフォルトでは、関数の評価だけが行われます。つまり、このような再計算が行われるたびにサブクエリーの新しいビューオブジェクトが作成されます。 サブビューの作成とデータの挿入が繰り返されるのを避けることによってパフォーマンスを向上させるには、 AttachViewメソッドを使用して 外側のビューにサブビューを認識させます。これにより、外側のビューは、自身が作成したサブビューオブジェクトをキャッシュおよび再利用します。

1つのビューに複数のサブビューがアタッチされている場合、 subviewIdパラメータを持つ AttachViewオーバーロードを使用して、すべてのサブビューに一意の サブビュー IDを提供する必要があります。

使用例
var productView = from p in products
  join s in sales
  on p.ProductID equals s.ProductID into productSales
  select new
  {
    p.Name, SalesByCountry = productSales.AttachView(v => 
      from s in v group s by s.Country into countrySales
      select new
      {
        Country = countrySales.Key, 
        SaleCount = countrySales.LiveSum(s => s.Quantity).Value
      })
  };
参照

View<T> クラス
View<T> メンバ
オーバーロード一覧
AttachAggregationView<TResult>(Func<View<T>,AggregationView<T,TResult>>) メソッド